//package com.skywolf.chem.common.sysconfig.utils;
//
///**
// * Created by pei_pei on 2020/10/27.
// */
////import com.aspose.words.Document;
////import com.aspose.words.FontSettings;
////import com.lowagie.text.DocumentException;
//import freemarker.template.Configuration;
//import freemarker.template.Template;
//import freemarker.template.TemplateException;
//import freemarker.template.TemplateExceptionHandler;
//import java.io.ByteArrayInputStream;
//import java.io.ByteArrayOutputStream;
//import java.io.FileNotFoundException;
//import java.io.IOException;
//import java.io.StringWriter;
//import java.util.Map;
//
//public class FreemarkerUtils {
//    private static volatile Configuration configuration;
//
//    public FreemarkerUtils() {
//    }
//
//    public static String freemarkerRenderClasspathTemplate(Map<String, Object> dataMap, String templateBasePath, String templateFilePath) {
//        StringWriter out = new StringWriter();
//        configuration.setDefaultEncoding("UTF-8");
//        configuration.setTemplateExceptionHandler(TemplateExceptionHandler.RETHROW_HANDLER);
//
//        try {
//            configuration.setClassForTemplateLoading(FreemarkerUtils.class, templateBasePath);
//            configuration.setLogTemplateExceptions(false);
//            configuration.setWrapUncheckedExceptions(true);
//            configuration.setNumberFormat("0.##");
//            Template e = configuration.getTemplate(templateFilePath);
//            e.process(dataMap, out);
//            out.flush();
//            String var5 = out.toString();
//            return var5;
//        } catch (IOException var19) {
//            var19.printStackTrace();
//        } catch (TemplateException var20) {
//            var20.printStackTrace();
//        } catch (Exception var21) {
//            var21.printStackTrace();
//        } finally {
//            try {
//                out.close();
//            } catch (IOException var18) {
//                var18.printStackTrace();
//            }
//
//        }
//
//        return null;
//    }
//
//    public static byte[] createPDF(String templateStr, String fontFile) {
//        ByteArrayOutputStream outputStream = null;
//        Object result = null;
//
//        try {
//            ByteArrayInputStream e = new ByteArrayInputStream(templateStr.getBytes());
//            Document document = new Document(e);
//            FontSettings fontSettings = new FontSettings();
//            outputStream = new ByteArrayOutputStream();
//            document.setFontSettings(fontSettings);
//            document.save(outputStream, 40);
//            outputStream.flush();
//            byte[] var7 = outputStream.toByteArray();
//            return var7;
//        } catch (FileNotFoundException var23) {
//            var23.printStackTrace();
//        } catch (DocumentException var24) {
//            var24.printStackTrace();
//        } catch (IOException var25) {
//            var25.printStackTrace();
//        } catch (Exception var26) {
//            var26.printStackTrace();
//        } finally {
//            try {
//                outputStream.close();
//            } catch (IOException var22) {
//                var22.printStackTrace();
//            }
//
//        }
//
//        return (byte[])result;
//    }
//
//    static {
//        if(configuration == null) {
//            Class var0 = FreemarkerUtils.class;
//            synchronized(FreemarkerUtils.class) {
//                if(configuration == null) {
//                    configuration = new Configuration(Configuration.VERSION_2_3_28);
//                }
//            }
//        }
//
//    }
//}
//
